#ifndef _KEYHANDLER_H_
#define _KEYHANDLER_H_
#include "ImmData.h"

class KeyHandler
{
private:
	ImmData* lpImmData;
	CONST BYTE vKey;
	LPDWORD lpTransKey;
	CONST LPBYTE lpKeyState;
	CONST UINT lparam;
public:
	static BYTE CurrentKey;
public:
	static UINT GetKeyType(BYTE key);
	KeyHandler(HIMC hIMC,UINT uVKey,LPDWORD lpdwTransKey,UINT lparam,CONST LPBYTE lpbKeyState);
	~KeyHandler();
	VOID HandleEx();
	BOOL Process();
private:
	BOOL _processKeyUp();
	BOOL _processKeyDown();
	VOID _handlExKeyUp();
	VOID _handlExKeyDown();
	BOOL _keyShiftSinglePress();
};
#endif
